package com.neusoft.NursingHome.service;

import com.neusoft.NursingHome.po.NursingProject;
import java.util.List;

public interface NursingProjectService {

    /**
     * 查询所有的护理项目
     * @return 所有护理项目的列表
     */
    List<NursingProject> getAllNursingProjects();

    /**
     * 添加新的护理项目
     * @param nursingProject 护理项目对象
     * @return 添加是否成功
     */
    boolean addNursingProject(NursingProject nursingProject);

    /**
     * 更新护理项目信息
     * @param nursingProject 更新后的护理项目对象
     * @return 更新是否成功
     */
    boolean updateNursingProject(NursingProject nursingProject);

    /**
     * 获取单个护理项目的详细信息
     * @param projectId 护理项目的唯一标识符
     * @return 护理项目详细信息
     */
    NursingProject getNursingProjectById(Integer projectId);

    /**
     * 逻辑删除护理项目
     * @param projectId 护理项目的唯一标识符
     * @return 删除是否成功
     */
    boolean deleteNursingProject(Integer projectId);

    /**
     * 根据状态查询护理项目
     * @param status 状态值
     * @return 符合条件的护理项目列表
     */
    List<NursingProject> getNursingProjectsByStatus(Integer status);

    /**
     * 通过护理项目名称模糊查询
     * @param name 护理项目名称（支持模糊匹配）
     * @return 匹配的护理项目列表
     */
    List<NursingProject> searchNursingProjectsByName(String name);
}